The subject matter discussed in the background section should not be assumed to be prior art merely as a result of its mention in the background section. Similarly, a problem mentioned in the background section or associated with the subject matter of the background section should not be assumed to have been previously recognized in the prior art. The subject matter in the background section merely represents different approaches, which in and of themselves may also correspond to embodiments of the claimed subject matter.
A digital signature or digital signature scheme is a mathematical scheme for demonstrating the authenticity of a digital message or document. A valid digital signature gives a recipient reason to believe that the message was created by a known sender, and that it was not altered in transit. Digital signatures are commonly used for software distribution, financial transactions, and in other cases where it is important to detect forgery or tampering, for instance, to ensure that a message being delivered is authentic or to ensure that software being distributed for installation is free of malicious alterations by another entity different than the originator.
Digital signatures employ a type of asymmetric cryptography. For messages sent through a nonsecure channel, a properly implemented digital signature gives the receiver reason to believe the message was sent by the claimed sender. A signature generated from a fixed message and fixed private key should verify the authenticity of that message by using the corresponding public key. It should further be computationally infeasible to generate a valid signature for a party who does not possess the private key.
In cryptography, PKCS (Public-Key Cryptography Standards) is a set of standards devised and published by RSA Security Inc., which in recent years, have become relevant to standards organizations such as the IETF (Internet Engineering Task Force) and PKIX (Public-Key Infrastructure (X.509)) working groups.
The problem with the conventional mechanisms for providing digital signatures is that the resulting signature is wasteful as it incorporates sometimes large amounts of padding which is nothing more than arbitrary data, and further because conventional mechanisms dictate a single digest which must be utilized by the recipient to verify the digital key, regardless of whether the particular digest is supported by the recipient or best suited to the particular needs of the recipient.
The present state of the art may therefore benefit from the methods and apparatuses for signing and verifying data using multiple hash algorithms and digests in PKCS as described herein.